home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / tex / siam10.doc < prev    next >
Text File  |  1987-08-10  |  15KB  |  347 lines

  1. % SIAM DOCUMENT STYLE --- released 27 January 1986
  2. %    for LaTeX version 2.09
  3. % Mod of ARTICLE by HWT (Copyright (C) 1985 by Leslie Lamport)
  4.  
  5. %  ****************************************
  6. %  *               FONTS                  *
  7. %  ****************************************
  8. %
  9.  
  10. \lineskip 1pt            % \lineskip is 1pt for all font sizes.
  11. \normallineskip 1pt
  12. \def\baselinestretch{1}
  13.  
  14. % Each size-changing command \SIZE executes the command
  15. %        \@setsize\SIZE{BASELINESKIP}\FONTSIZE\@FONTSIZE
  16. % where:
  17. %   BASELINESKIP = Normal value of \baselineskip for that size.  (Actual 
  18. %                  value will be \baselinestretch * BASELINESKIP.)
  19. %
  20. %  \FONTSIZE     = Name of font-size command.  The currently available
  21. %                  (preloaded) font sizes are: \vpt (5pt), \vipt (6pt),
  22. %                  \viipt (etc.), \viiipt, \ixpt, \xpt, \xipt, \xiipt,
  23. %                  \xivpt, \xviipt, \xxpt, \xxvpt.
  24. %  \@FONTSIZE    = The same as the font-size command except with an
  25. %                  '@' in front---e.g., if \FONTSIZE = \xivpt then
  26. %                  \@FONTSIZE = \@xivpt.
  27. %
  28. % For reasons of efficiency that needn't concern the designer,
  29. % the document style defines \@normalsize instead of \normalsize .  This is
  30. % done only for \normalsize, not for any other size-changing commands.
  31.  
  32. \def\@normalsize{\@setsize\normalsize{12pt}\xpt\@xpt
  33. \abovedisplayskip 10pt plus2pt minus5pt%
  34. \belowdisplayskip \abovedisplayskip
  35. \abovedisplayshortskip  \abovedisplayskip   
  36. \belowdisplayshortskip  \belowdisplayskip}
  37.  
  38. \def\small{\@setsize\small{11pt}\ixpt\@ixpt
  39. \abovedisplayskip 8.5pt plus 3pt minus 4pt%
  40. \belowdisplayskip \abovedisplayskip
  41. \abovedisplayshortskip \abovedisplayskip
  42. \belowdisplayshortskip \belowdisplayskip
  43. \def\@listi{\topsep 0pt\parsep 0pt plus 1pt
  44. \itemsep \parsep}}
  45.  
  46. \def\footnotesize{\@setsize\footnotesize{9.5pt}\viiipt\@viiipt
  47. \abovedisplayskip 6pt plus 2pt minus 4pt%
  48. \belowdisplayskip \abovedisplayskip
  49. \abovedisplayshortskip \abovedisplayskip
  50. \belowdisplayshortskip \belowdisplayskip
  51. \def\@listi{\topsep 0pt\parsep 0pt plus 1pt
  52. \itemsep \parsep}}
  53.  
  54. \def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt}
  55. \def\tiny{\@setsize\tiny{6pt}\vpt\@vpt}
  56. \def\large{\@setsize\large{14pt}\xiipt\@xiipt}
  57. \def\Large{\@setsize\Large{18pt}\xivpt\@xivpt}
  58. \def\LARGE{\@setsize\LARGE{22pt}\xviipt\@xviipt}
  59. \def\huge{\@setsize\huge{25pt}\xxpt\@xxpt}
  60. \def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
  61.  
  62. \normalsize  % Choose the normalsize font.
  63.  
  64.  
  65. %  ****************************************
  66. %  *            PAGE LAYOUT               *
  67. %  ****************************************
  68. %
  69. % All margin dimensions measured from a point one inch from top and side
  70. % of page.  
  71.  
  72. % SIDE MARGINS:
  73. \oddsidemargin  .5in     %   Left margin on odd-numbered pages.
  74. \evensidemargin .5in     %   Left margin on even-numbered pages.
  75. \marginparwidth 1.25in   %   Width of marginal notes.
  76. \marginparsep .25in          % Horizontal space between outer margin and 
  77.                             % marginal note
  78.  
  79.  
  80. % VERTICAL SPACING:        
  81.                          % Top of page:
  82. \topmargin 0in           %    Nominal distance from top of page to top of
  83.                          %    box containing running head.
  84. \headheight 10pt         %    Height of box containing running head.
  85. \headsep .2in            %    Space between running head and text.
  86. % \topskip = 10pt        %    '\baselineskip' for first line of page.
  87.                          % Bottom of page:
  88. \footheight 10pt         %    Height of box containing running foot.
  89. \footskip .2in           %    Distance from baseline of box containing foot 
  90.                          %    to baseline of last line of text.
  91.  
  92.  
  93. % DIMENSION OF TEXT:
  94.  
  95. \textheight 8.25in       % Height of text (including footnotes and figures, 
  96.                          % excluding running head and foot).
  97. \textwidth 5.125in       % Width of text line.
  98.                          % For two-column mode: 
  99. \columnsep 10pt          %    Space between columns 
  100. \columnseprule 0pt       %    Width of rule between columns.
  101.  
  102. % A \raggedbottom command causes 'ragged bottom' pages: pages set to
  103. % natural height instead of being stretched to exactly \textheight.
  104.  
  105. % FOOTNOTES:
  106.  
  107. \footnotesep 6.65pt   % Height of strut placed at the beginning of every
  108.                       % footnote = height of normal \footnotesize strut,
  109.                       % so no extra space between footnotes.
  110.  
  111. \skip\footins 13pt plus 4pt minus 2pt  % Space between last line of text and 
  112.                                       % top of first footnote.
  113.  
  114. % FLOATS: (a float is something like a figure or table)
  115. %
  116. %  FOR FLOATS ON A TEXT PAGE:
  117. %
  118. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  119. \floatsep 12pt plus 2pt minus 2pt        % Space between adjacent floats moved
  120.                                          % to top or bottom of text page.
  121. \textfloatsep 20pt plus 2pt minus 4pt    % Space between main text and floats
  122.                                          % at top or bottom of page.
  123. \intextsep 12pt plus 2pt minus 2pt       % Space between in-text figures and 
  124.                                          % text.
  125. \@maxsep 20pt                            % The maximum of \floatsep, 
  126.                                          % \textfloatsep and \intextsep (minus
  127.                                          % the stretch and shrink).
  128. %    TWO-COLUMN FLOATS IN TWO-COLUMN MODE:
  129. \dblfloatsep 12pt plus 2pt minus 2pt     % Same as \floatsep for double-column
  130.                                          % figures in two-column mode.
  131. \dbltextfloatsep 20pt plus 2pt minus 4pt % \textfloatsep for double-column 
  132.                                          % floats.
  133. \@dblmaxsep 20pt                         % The maximum of \dblfloatsep and 
  134.                                          % \dbltexfloatsep.
  135.  
  136. %  FOR FLOATS ON A SEPARATE FLOAT PAGE OR COLUMN:
  137. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  138. \@fptop 0pt plus 1fil    % Stretch at top of float page/column. (Must be    
  139.                          % 0pt plus ...)                                    
  140. \@fpsep 8pt plus 2fil    % Space between floats on float page/column.       
  141. \@fpbot 0pt plus 1fil    % Stretch at bottom of float page/column. (Must be 
  142.                          % 0pt plus ... )                                   
  143.  
  144. %   DOUBLE-COLUMN FLOATS IN TWO-COLUMN MODE.
  145. \@dblfptop 0pt plus 1fil % Stretch at top of float page. (Must be 0pt plus ...)
  146. \@dblfpsep 8pt plus 2fil % Space between floats on float page.
  147. \@dblfpbot 0pt plus 1fil % Stretch at bottom of float page. (Must be 
  148.                          % 0pt plus ... )                                   
  149. % MARGINAL NOTES:
  150. %
  151. \marginparpush 5pt       % Minimum vertical separation between two marginal 
  152.                          % notes.
  153.  
  154.  
  155. %  ****************************************
  156. %  *           PARAGRAPHING               *
  157. %  ****************************************
  158. %
  159. \parskip 0pt plus 1pt              % Extra vertical space between paragraphs.
  160. \parindent .25in                   % Width of paragraph indentation.
  161. \topsep 0pt                   % Extra vertical space, in addition to 
  162.                                    % \parskip, added above and below list and
  163.                                    % paragraphing environments.
  164. \partopsep 0pt               % Extra vertical space, in addition to 
  165.                                    % \parskip and \topsep, added when user
  166.                                    % leaves blank line before environment.
  167. \itemsep 0pt                   % Extra vertical space, in addition to
  168.                                    % \parskip, added between list items.
  169.  
  170. % The following page-breaking penalties are defined
  171.  
  172. \@lowpenalty   51      % Produced by \nopagebreak[1] or \nolinebreak[1]
  173. \@medpenalty  151      % Produced by \nopagebreak[2] or \nolinebreak[2]
  174. \@highpenalty 301      % Produced by \nopagebreak[3] or \nolinebreak[3]
  175.  
  176. \@beginparpenalty -\@lowpenalty    % Before a list or paragraph environment.
  177. \@endparpenalty   -\@lowpenalty    % After a list or paragraph environment.
  178. \@itempenalty     -\@lowpenalty    % Between list items.
  179.  
  180. % \clubpenalty         % 'Club line'  at bottom of page.
  181. % \widowpenalty        % 'Widow line' at top of page.
  182. % \displaywidowpenalty % Math display widow line.
  183. % \predisplaypenalty   % Breaking before a math display.
  184. % \postdisplaypenalty  % Breaking after a math display.
  185. % \interlinepenalty    % Breaking at a line within a paragraph.
  186. % \brokenpenalty       % Breaking after a hyphenated line.
  187.  
  188.  
  189. %    ****************************************
  190. %    *             SECTIONS                 *
  191. %    ****************************************
  192. %
  193.  
  194. % \secdef{UNSTARCMDS}{STARCMDS} :
  195. %    When defining a sectionioning command without using
  196. %    \@startsection, you can use \secdef as follows:
  197. %       \def\part { ... \secdef \CMDA \CMDB }
  198. %       \def\CMDA  [#1]#2{ ... }     % Command to define \part[...]{...}
  199. %       \def\CMDB  #1{ ... }         % Command to define \part*{...}
  200.  
  201. \def\part{\par               % New paragraph
  202.    \addvspace{4ex}           % Adds vertical space above title.
  203.    \@afterindentfalse        % Suppresses indent in first paragraph.  Change
  204.    \secdef\@part\@spart}     % to \@afterindenttrue to have indent.
  205.  
  206. \def\@part[#1]#2{\ifnum \c@secnumdepth >\m@ne    % IF secnumdepth > -1
  207.         \refstepcounter{part}                    %  THEN step part counter
  208.         \addcontentsline{toc}{part}{\thepart     %       add toc line
  209.         \hspace{1em}#1}\else                     %  ELSE add unnumbered line
  210.       \addcontentsline{toc}{part}{#1}\fi         % FI
  211.    { \parindent 0pt \raggedright 
  212.     \ifnum \c@secnumdepth >\m@ne   % IF secnumdepth > -1 
  213.       \bf Part \thepart            %   THEN Print 'Part' and 
  214.       \par \nobreak                %          number
  215.     \fi                            % FI
  216.     \bf                            % Select boldface.
  217.     #2\markboth{}{}\par }          % Print title and set heading marks null.
  218.     \nobreak                       % TeX penalty to prevent page break.
  219.     \vskip 3ex                     % Space between title and text.
  220.    \@afterheading                  % Routine called after part and
  221.     }                              %     section heading.
  222.  
  223. % Heading for \part* command
  224. \def\@spart#1{{\parindent 0pt \raggedright 
  225.     \bf                       
  226.     #1\par}                         % Title.
  227.     \nobreak                        % TeX penalty to prevent page break.
  228.     \vskip 3ex                      % Space between title and text.
  229.     \@afterheading                  % Routine called after part and
  230.   }                                 %     section heading.
  231.  
  232. % \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE} 
  233. %            optional * [ALTHEADING]{HEADING}
  234. %    Generic command to start a section.  
  235. %    NAME       : e.g., 'subsection'
  236. %    LEVEL      : a number, denoting depth of section -- i.e., section=1,
  237. %                 subsection = 2, etc.  A section number will be printed if
  238. %                 and only if LEVEL < or = the value of the secnumdepth
  239. %                 counter.
  240. %    INDENT     : Indentation of heading from left margin
  241. %    BEFORESKIP : Absolute value = skip to leave above the heading.  
  242. %                 If negative, then paragraph indent of text following 
  243. %                 heading is suppressed.
  244. %    AFTERSKIP  : if positive, then skip to leave below heading,
  245. %                       else - skip to leave to right of run-in heading.
  246. %    STYLE      : commands to set style
  247. %  If '*' missing, then increments the counter.  If it is present, then
  248. %  there should be no [ALTHEADING] argument.  A sectioning command
  249. %  is normally defined to \@startsection + its first six arguments.
  250.  
  251. \def\section{\@startsection {section}{1}{.25in}{1.3ex plus .5ex minus 
  252.     .2ex}{-.5em plus -.1em}{\bf}}
  253. \def\subsection{\@startsection {subsection}{2}{.25in}{1.3ex plus .5ex minus 
  254.     .2ex}{-.5em plus -.1em}{\bf}}
  255. \def\subsubsection{\@startsection {subsubsection}{3}{.25in}{1.3ex plus .5ex minus 
  256.     .2ex}{-.5em plus -.1em}{\bf}}
  257. \def\paragraph{\@startsection {paragraph}{4}{.25in}{1.3ex plus .5ex minus 
  258.     .2ex}{-.5em plus -.1em}{\it}}
  259. \def\subparagraph{\@startsection {subparagraph}{4}{.25in}{1.3ex plus .5ex minus 
  260.     .2ex}{-.5em plus -.1em}{\it}}
  261.  
  262.  
  263. % Default initializations of \...mark commands.  (See below for their
  264. % us in defining page styles.
  265. %
  266.  
  267. % \def\sectionmark#1{}           % Preloaded definitions
  268. % \def\subsectionmark#1{}
  269. % \def\subsubsectionmark#1{}
  270. % \def\paragraphmark#1{}
  271. % \def\subparagraphmark#1{}
  272.  
  273. % The value of the counter secnumdepth gives the depth of the
  274. % highest-level sectioning command that is to produce section numbers.
  275. %
  276.  
  277. \setcounter{secnumdepth}{3}
  278.  
  279. % APPENDIX
  280. %
  281. % The \appendix command must do the following:
  282. %    -- reset the section and subsection counters to zero
  283. %    -- redefine the section counter to produce appendix numbers
  284. %    -- redefine the \section command if appendix titles and headings are
  285. %       to look different from section titles and headings.
  286.  
  287. \def\appendix{\par
  288.   \setcounter{section}{0}
  289.   \setcounter{subsection}{0}
  290.   \def\thesection{\Alph{section}}}
  291.  
  292.  
  293. %    ****************************************
  294. %    *                LISTS                 *
  295. %    ****************************************
  296. %
  297.  
  298. % The following commands are used to set the default values for the list
  299. % environment's parameters. See the LaTeX manual for an explanation of
  300. % the meanings of the parameters.  Defaults for the list environment are
  301. % set as follows.  First, \rightmargin, \listparindent and \itemindent
  302. % are set to 0pt.  Then, for a Kth level list, the command \@listK is
  303. % called, where 'K' denotes 'i', 'ii', ... , 'vi'.  (I.e., \@listiii is
  304. % called for a third-level list.)  By convention, \@listK should set
  305. % \leftmargin to \leftmarginK.
  306. %
  307. % For efficiency, level-one list's values are defined at top level, and
  308. % \@listi is defined to set only \leftmargin
  309.  
  310. \leftmargini .5in
  311. \leftmarginii 22pt     % > \labelsep + width of '(m)'
  312. \leftmarginiii 18.7pt  % > \labelsep + width of 'vii.'
  313. \leftmarginiv 17pt     % > \labelsep + width of 'M.'
  314. \leftmarginv 10pt
  315. \leftmarginvi 10pt
  316.  
  317. \leftmargin\leftmargini
  318. \labelwidth\leftmargini\advance\labelwidth-\labelsep
  319. \labelsep 5pt
  320. \parsep 0pt
  321.  
  322. \def\@listi{\leftmargin\leftmargini}
  323.  
  324. \def\@listii{\leftmargin\leftmarginii
  325.    \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  326.    \topsep 0pt
  327.    \parsep 0pt
  328.    \itemsep \parsep}
  329.  
  330. \def\@listiii{\leftmargin\leftmarginiii
  331.     \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  332.     \topsep 0pt
  333.     \parsep \z@ \partopsep 0pt
  334.     \itemsep \topsep}
  335.  
  336. \def\@listiv{\leftmargin\leftmarginiv
  337.      \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
  338.  
  339. \def\@listv{\leftmargin\leftmarginv
  340.      \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
  341.  
  342. \def\@listvi{\leftmargin\leftmarginvi
  343.      \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
  344.  
  345.  
  346.  
  347.